using ProduceBasicData.Api.DTO;

namespace ProduceBasicData.Api.Services
{
    /// <summary>
    /// 编码规则元数据服务接口
    /// </summary>
    public interface ICodeRuleMetadataService
    {
        /// <summary>
        /// 获取业务名称列表
        /// </summary>
        /// <returns>业务实体列表</returns>
        Task<List<BusinessDto>> GetBusinessesAsync();

        /// <summary>
        /// 获取指定实体的字段列表
        /// </summary>
        /// <param name="classFullName">实体完整限定名</param>
        /// <returns>字段列表</returns>
        Task<List<FieldDto>> GetFieldsAsync(string classFullName);

        /// <summary>
        /// 获取日期字段列表
        /// </summary>
        /// <param name="classFullName">实体完整限定名</param>
        /// <returns>日期字段列表</returns>
        Task<List<FieldDto>> GetDateFieldsAsync(string classFullName);
    }
}